Skip to content

docs: state the framework-page contract per integration tier - #695

Merged
HugoRCD merged 1 commit into
mainfrom
EVL-361/fix-skill-framework-contract
Sep 10, 2026
Merged

HugoRCD merged 1 commit into
mainfrom
EVL-361/fix-skill-framework-contract

Conversation

@evlogai

@evlogai evlogai Bot commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

What

The framework-page standard in .agents/skills/write-evlog-content/references/surfaces/docs.md claimed every framework integration exposes evlog(), useLogger(), log.fork() and the full BaseEvlogOptions surface. The package source contradicts that, so a reviewer applying the line literally flags correct pages as incomplete and a rewriter would document APIs that do not exist. The section is rewritten as a per-tier contract:

  • First-class integrations built on defineFrameworkIntegration take the full BaseEvlogOptions surface and a request-bound logger, with the accessor names per entry point listed exactly: evlog() (elysia, express, fastify, hono, react-router, sveltekit), evlog() and withEvlog() (orpc), createEvlog()/evlogMiddleware() (next), EvlogModule (nestjs), withEvlog()/createWorkersLogger() (workers).
  • log.fork() is wired only where request scope is AsyncLocalStorage-backed: nine of the ten, workers excepted because it must stay free of node:async_hooks.
  • Nuxt and Nitro are event-bound: useLogger(event), no log.fork().
  • Astro, AWS Lambda and standalone are guide-level on the core initLogger/createLogger/createRequestLogger API; their pages must not gain evlog(), useLogger() or log.fork().
  • evlog/workers delivers the logger as the handler's fourth argument.

Evidence (verified against main, a82f2b4)

  • defineFrameworkIntegration appears in exactly those ten packages under packages/evlog/src.
  • attachForkToLogger fires only if (spec.storage) (src/shared/integration.ts), and the workers spec sets none (src/workers/index.ts:146).
  • evlog() export locations: elysia:122, express:55, fastify:102, hono:99, orpc:183, react-router:64, sveltekit:155. withEvlog(): orpc:110, workers:198. next exports createEvlog:43, evlogMiddleware:9. nestjs exports EvlogModule:93.
  • useLogger is exported from src/runtime/server/useLogger.ts (event-bound) and re-exported by every tier-one entry point except workers.
  • src/logger.ts:855: standalone loggers have no fork; 14.astro.md, 16.aws-lambda.md and 13.standalone.md document the core API.
  • Docs pages already agree, including 04.nitro.md stating log.fork() is not available.

Verification

  • pnpm content:lint on the edited file at the final revision: dashes 0, epigram ratio 0, sentence CV 0.5. The two T-15 hits at line 52 are pre-existing false positives on the bullet that deliberately bans evlog/shared and evlog/browser.
  • Content review ran over the changed section in three rounds (blocked → minor → pass). Round 1 caught that the first draft still overclaimed: evlog() is not exported by next, nestjs or workers, and workers gets no fork. Round 2 caught orpc's public withEvlog() missing from the mapping. Round 3: pass, no critical or standard findings.
  • Checks on the final revision: pnpm run lint 22/22, pnpm run typecheck 27/27, pnpm run test all suites green (evlog 90 files / 1899 tests, docs 7/139, telemetry 5/57, among others).

Notes

  • No changeset: the change is confined to .agents/skills/, not a consumer-facing package change.
  • The published skills/ mirror does not contain this file; only the internal .agents/skills/ copy exists.

Closes EVL-361 (2026-08-28 content pass, enrich half).

The old sentence claimed every framework integration exposes evlog(), useLogger() and log.fork(). The source contradicts it: fork is wired only via defineFrameworkIntegration (elysia, express, fastify, hono, nestjs, next, orpc, react-router, sveltekit, workers), nuxt and nitro are event-bound with no fork, and astro, aws-lambda and standalone are guide-level on the core createLogger/createRequestLogger API. A reviewer applying the old line literally would flag correct pages as incomplete.
@evlogai
evlogai Bot requested a review from HugoRCD September 10, 2026 21:06
@vercel

vercel Bot commented Sep 10, 2026 •

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
evi Ready Ready Preview Sep 10, 2026 9:09pm UTC
evlog-docs Ready Ready Preview, v0 Sep 10, 2026 9:09pm UTC
evlog-render-lab Ready Ready Preview Sep 10, 2026 9:09pm UTC
evlog-telemetry Ready Ready Preview Sep 10, 2026 9:09pm UTC
just-use-evlog Ready Ready Preview Sep 10, 2026 9:09pm UTC

Request Review

@coderabbitai

coderabbitai Bot commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Advanced

Run ID: 71e79901-5c7e-4a90-829e-72f1054b7348

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

Copy link
Copy Markdown
Contributor

Thank you for following the naming conventions! 🙏

@pkg-pr-new

pkg-pr-new Bot commented Sep 10, 2026

Copy link
Copy Markdown
npm i https://pkg.pr.new/@evlog/cli@695
npm i https://pkg.pr.new/evlog@695
npm i https://pkg.pr.new/@evlog/nuxthub@695
npm i https://pkg.pr.new/@evlog/telemetry@695

commit: 3291457

@HugoRCD
HugoRCD merged commit 25cb861 into main Sep 10, 2026
21 checks passed
@HugoRCD
HugoRCD deleted the EVL-361/fix-skill-framework-contract branch September 10, 2026 21:33

This branch was successfully deployed

5 active deployments
Preview – evlog-docs — 3291457c Deployed Sep 10, 2026 by vercel[bot]
Preview – evi — 3291457c Deployed Sep 10, 2026 by vercel[bot]
Preview – evlog-render-lab — 3291457c Deployed Sep 10, 2026 by vercel[bot]
Preview – just-use-evlog — 3291457c Deployed Sep 10, 2026 by vercel[bot]
Preview – evlog-telemetry — 3291457c Deployed Sep 10, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant